ci: rename demo-gif workflow with a commit path, split quickstart into its own workflow - #56
Merged
Merged
Conversation
…shes workflow_dispatch keeps rendering and uploading the demo-gif artifact unchanged. A new push trigger, scoped to docs/assets/demo.tape on non-default branches, renders and commits the regenerated GIF back to the pushed branch via stefanzweifel/git-auto-commit-action (pinned to the v7.2.0 tag's commit SHA) -- main is protected with no bypass, so the workflow can never push there, and a tape change now carries its GIF into its own pull request instead of requiring a hand-off. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Signed-off-by: Claude <noreply@anthropic.com>
Moves the quickstart job out of ci.yml into a dedicated quickstart.yml workflow (push, pull_request), still driven by tools/quickstart_block.py as the single source of the README's fenced bash block. The job also regenerates docs/quickstart.sh from that same block and fails the build if the committed copy has drifted, so the owner gets a runnable script without a second, hand-maintained source of the commands. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Signed-off-by: Claude <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Signed-off-by: Claude <noreply@anthropic.com>
open-coder-ai-org
marked this pull request as ready for review
September 9, 2026 01:33
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Block 1 of the launch-prep handover, two independent CI changes:
render-demo.yml→demo-gif.yml, keeping the SHA-pinnedworkflow_dispatchrender/uploadpath unchanged, and adding a
pushtrigger (paths: ["docs/assets/demo.tape"],branches-ignore: [main]) that renders and commits the regenerated GIF back to the pushedbranch via
stefanzweifel/git-auto-commit-action, pinned to the commit SHA of tagv7.2.0(
4a55954c782fc1ea30b9056cd3e7a2b40ca8887d, resolved viagit ls-remote --tags).mainisprotected with no bypass, so the workflow can never push there; a tape change now carries its
GIF into its own pull request instead of a manual artifact download.
ci.ymlinto its own.github/workflows/quickstart.yml(
push,pull_request), still driven bytools/quickstart_block.pyas the single source ofthe README's fenced
bashblock. The job also regeneratesdocs/quickstart.shfrom that sameblock and fails if the committed copy has drifted, so the README stays the one source and the
owner still gets a runnable script.
Definition of done
python -m ruff check .andpython -m ruff format --check .cleanpython -m pytest -qgreen (408 passed)spec/changechock check/chock sync --repo . --check— not applicable,.agents/policies/untouchedClaims
Verification
The README's three cited
report.jsonrows (reachability,fault.malformedOutput,cost.context_tokens) were checked against a freshly produced report and match,inputHashincluded.
Proof the quickstart job still fails on a broken block (edited the README's
--n 20to--n 20 --nonexistent-flag, ran the same extract-and-run sequence the new workflow uses, thenreverted):
README.mdwas restored byte-for-byte afterward (diffconfirmed no residual change).Checks confirmed, not changed
docs/assets/demo.gifis 149,521 bytes and was left exactly as-is (not compressed) per thehandover — this repo's GIF is already small enough.
open-coder-ai-orgstring and no stale owner inpyproject.toml;authors, all[project.urls], and the badge/image URLs already sayopen-coder-ai.Deviations
docs/quickstart.shis satisfied without a second hand-maintainedsource: the new workflow generates it from the README's block via the existing
tools/quickstart_block.pyextractor and fails the build on drift, then the generated file iscommitted.
tools/quickstart_block.pystays the single source of truth.charmbracelet/vhs-action, sodemo-gif.ymlkeepsthe existing plain-binary VHS install (checksummed download) it already used; unchanged by
this PR.
🤖 Generated with Claude Code